package com.second.oa.dao;

import java.sql.SQLException;
import java.util.List;


public interface BaseDao<T> {
	/**
	 * 添加
	 * @param emp
	 * @throws SQLException
	 */
	public void add(T t) throws SQLException;
	/**
	 * 修改
	 * @param emp
	 * @throws SQLException
	 */
	public void update(T t)throws SQLException;
	/**
	 * 删除
	 * @param id
	 * @throws SQLException
	 */
	public void delete(String id) throws SQLException;
	/**
	 * 查询总条数
	 * @param sql
	 * @param params
	 * @return
	 * @throws SQLException
	 */
	public int getCount(String sql, Object...params) throws SQLException;
	/**
	 * 查询单条数据
	 * @param sql
	 * @param params
	 * @return
	 * @throws SQLException
	 */
	public T get(String sql, Object...params) throws SQLException;
	/**
	 * 查询列表
	 * @param sql
	 * @param pn
	 * @param pr
	 * @param params
	 * @return
	 * @throws SQLException
	 */
	public List<T> list(String sql, int pn, int pr, Object...params) throws SQLException;
	/**
	 * 查询列表
	 * @param sql
	 * @param pn
	 * @param pr
	 * @param params
	 * @return
	 * @throws SQLException
	 */
	public List<T> list(String sql, Object...params) throws SQLException;
	
}
